package com.mxx.common.payment;

/**
 * @Auther: Mr. Zeng
 * @Date: 2020/8/14 16:02
 * @Description: 暂无描述
 */
public interface FinishTradeHandler {


    /**
     * 付款成功
     *
     * @param tradeType
     * @param paymentId
     * @param operatorId
     */

    void paymentSuccessfully(TradeType tradeType, String paymentId, String operatorId);

    /**
     * 付款成功
     *
     * @param tradeType
     * @param paymentId
     * @param operatorId
     * @param failCode   支付宝[TRADE_FINISHED(交易完结),TRADE_CLOSED(交易关闭)]
     * @param failMsg
     */

    void paymentFailure(TradeType tradeType, String paymentId, String operatorId, String failCode, String failMsg);


    /**
     * 退款成功
     *
     * @param tradeType
     * @param paymentId
     * @param operatorId
     * @param description
     */

    void refundSuccessfully(TradeType tradeType, String paymentId, String operatorId, String description);

    /**
     * 退款失败
     *
     * @param tradeType
     * @param paymentId
     * @param operatorId
     */

    void refundFailure(TradeType tradeType, String paymentId, String operatorId, String failCode, String failMsg);

}
